package HLLib.game;

import HLCode.HLClass;
import HLCode.HLClassManager;
import HLCode.HLClassManager_H;
import HLCode.HLLibObject;
import HLCode.HLObject;
import HLLib.base.HLImage;

public class HLMapSprite extends HLLibObject implements HLMapSprite_H {
    public HLClass GetClass(HLClassManager classManager) {
        return classManager.GetLibClass(HLClassManager_H.CLASS_GROUP_TYPE_LIB_GAME, HLClassManager_H.LIB_CLASS_GAME_MapSprite);
    }

    public int GetInt(int index) {
        switch (index) {
        case 0: {
            return cdType;
        }
        case 1: {
            return gridCountH;
        }
        case 2: {
            return gridCountV;
        }
        case 3: {
            return offset;
        }
        case 4: {
            return pri;
        }
        case 5: {
            return occupyH;
        }
        case 6: {
            return occupyV;
        }
        }
        return 0;
    }

    public void SetInt(int index, int value) {
        switch (index) {
        case 0: {
            cdType = (byte) value;
            return;
        }
        case 1: {
            gridCountH = (byte) value;
            return;
        }
        case 2: {
            gridCountV = (byte) value;
            return;
        }
        case 3: {
            offset = (byte) value;
            return;
        }
        case 4: {
            pri = (byte) value;
            return;
        }
        case 5: {
            occupyH = (byte) value;
            return;
        }
        case 6: {
            occupyV = (byte) value;
            return;
        }
        }
    }

    public HLObject GetObject(int index) {
        return image;
    }

    public void SetObject(int index, HLObject value) {
        image = (HLImage) value;
    }

    public HLImage image;

    public byte cdType;

    public byte gridCountH;

    public byte gridCountV;

    public byte offset;

    public byte pri;

    public byte occupyH;

    public byte occupyV;
}
